define(['app'],function(app){return {module: function($scope, $http, eventBusService, httpService, params, configService) {
	
	httpService.post(app.urls.menu_select,{"id":params.father_id},function(data){
		if("0000" === data.code){
			$scope.menu_name = data.data[0].name;
			$scope.findButton(data.data[0].id);
		}else{
			alert(data.msg);
		}
	});
	$scope.findButton=function(menu_id){
		httpService.post(app.urls.button_select,{"menu_id":menu_id},function(data){
			if("0000" === data.code){
				$scope.buttons = data.data;
			}else{
				alert(data.msg);
			}
		});
	}
	
	$scope.find = function(){
		httpService.postpage(app.urls.app_select, $scope.form, function(data) {
			if ("0000" === data.code) {
				$scope.rows = data.data;
			} else {
				alert(data.msg);
			}
		});
	}
	$scope.find();
	//按钮点击事件-条件查询
	$scope.select = function(){
    	$scope.page.current = 1;
    	//执行查询
    	$scope.find();
    }
	$scope.clickBtn=function(event){
		var menu = {};
		if(event=='add') {
			eventBusService.publish("modal.page", "modules/content/syssetting/appsetting/add?FatherControllerName=" + $scope.controllerName);
		}
		if(event=='set'){
			var values = [];
			var ids="";
			$('#'+$scope.controllerName+' input[name="dataPk"]:checked').each(function(){
				values.push($(this).val());
				ids = ids+",'"+$(this).val()+"'";
			});

			if(values.length < 1){
				eventBusService.publish('modal.alert', {"title":"操作提示","content":"请选择您要设置菜单的应用。"});
			}else if(values.length > 1){
				eventBusService.publish('modal.alert', {"title":"操作提示","content":"请选择一条数据进行操作。"});
			}else{
				var menu = {"url":"modules/content/syssetting/appsetting/menuAndButton/list?father_id="+params.father_id+"&fk_client="+values[0]};
				eventBusService.publish("modules.content.load",menu)
			}
		}
		if(event=='update'){
			var values = [];
			$('#'+$scope.controllerName+' input[name="dataPk"]:checked').each(function(){
				values.push($(this).val());
			});

			if(values.length < 1){
				eventBusService.publish('modal.alert', {"title":"操作提示","content":"请选择修改数据。"});
			}else if(values.length > 1){
				eventBusService.publish('modal.alert', {"title":"操作提示","content":"您选择了多行数据，请重新选择。"});
			}else{
				eventBusService.publish("modal.page","modules/content/syssetting/appsetting/update?FatherControllerName="+$scope.controllerName+"&id="+values[0]);
			}
		}
		if(event=='delete') {
			var values = [];
			var ids="";
			$('#'+$scope.controllerName+' input[name="dataPk"]:checked').each(function(){
				values.push($(this).val());
				ids = ids+",'"+$(this).val()+"'";
			});

			if(values.length < 1){
				eventBusService.publish('modal.alert', {"title":"操作提示","content":"请选择您要删除数据。"});
			}else{
				eventBusService.publish("modal.alert",{"content":"你是否确认删除这"+values.length+"条数据？","isAutoClose":false,"confirm":function(){
						httpService.post(app.urls.app_delete,{"ids":ids.replace(',','')},function(data){
							if("0000" === data.code){
								$scope.select();
							}else{
								alert(data.msg);
							}
						});
					},"cancel":function(){
						//用户取消，不做操作
					}});
			}
		}
		if(event=='enable'){
			var values = [];
			$('#'+$scope.controllerName+' input[name="dataPk"]:checked').each(function(){
				values.push($(this).val());
			});

			if(values.length < 1){
				eventBusService.publish('modal.alert', {"title":"操作提示","content":"请选择修改数据。"});
			}else if(values.length > 1){
				eventBusService.publish('modal.alert', {"title":"操作提示","content":"您选择了多行数据，请重新选择。"});
			}else{
				var menu = {"url":"modules/content/syssetting/appsetting/useUnit?father_id="+params.father_id+"&id="+values[0]};
				eventBusService.publish("modules.content.load",menu)
			}
		}
	}
	//接收模块变更
	eventBusService.subscribe('content.page.reload', function(event,data) {
		$scope.select();
    });
		//选择数据
		$scope.optData = function (element) {
			if($(element).find("input[name='dataPk']").is(":checked")){
				$(element).find("input[name='dataPk']").prop("checked",false);
				$(element).removeClass("opt_tr");
			}else{
				$(element).find("input[name='dataPk']").prop("checked",true);
				$(element).addClass("opt_tr");
			}
		}
		$scope.checkAll = function(target) {
			$("#" + $scope.controllerName + " input[name='dataPk']").each(function() {
				if ($(this).prop("checked")) {
					$(this).prop('checked', false);
					$(this).parents("tr").removeClass("opt_tr");
				} else {
					$(this).prop('checked', true);
					$(this).parents("tr").addClass("opt_tr");
				}
			})
		}
}}});